home *** CD-ROM | disk | FTP | other *** search
- Path: uunet!cs.utexas.edu!sun-barr!newstop!sun!CS.UCLA.EDU
- From: william@CS.UCLA.EDU (William Cheng)
- Newsgroups: comp.sources.x
- Subject: v08i047: tgif 1.9, Patch1, Part02/03
- Message-ID: <138563@sun.Eng.Sun.COM>
- Date: 9 Jul 90 07:22:15 GMT
- Sender: news@sun.Eng.Sun.COM
- Lines: 1989
- Approved: argv@sun.com
-
- Submitted-by: william@CS.UCLA.EDU (William Cheng)
- Posting-number: Volume 8, Issue 47
- Archive-name: tgif/patch2.02
- Patch-To: tgif: Volume 7, Issue 56-76
-
-
- Here is part 02 of the patch that takes tgif from version 1.2 to 1.9.
- The most recent version is available for anonymous ftp at the following places.
-
- expo.lcs.mit.edu contrib/tgif-1.9.tar.Z
- rye.cs.ucla.edu pub/tgif-1.9.tar.Z
-
- --Bill
- ---------------------------------> cut here <---------------------------------
- *** menu.c.orig Wed Jun 27 13:28:30 1990
- --- menu.c Wed Jun 27 13:28:32 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/menu.c,v 1.3 90/05/15 09:26:57 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/menu.c,v 1.10 90/06/25 23:58:20 william Exp $";
- #endif
-
- ***************
- *** 34,37 ****
- --- 34,38 ----
- #include "special.e"
- #include "text.e"
- + #include "version.e"
-
- int iconWindowCreated = FALSE;
- ***************
- *** 55,59 ****
- int * len, dsp_w, dsp_h, menu_w, menu_h;
- unsigned int status;
- ! int brdr_pixel, bg_pixel, root_x, root_y;
- XGCValues values;
- XEvent input;
- --- 56,60 ----
- int * len, dsp_w, dsp_h, menu_w, menu_h;
- unsigned int status;
- ! int root_x, root_y;
- XGCValues values;
- XEvent input;
- ***************
- *** 77,89 ****
- OrigY = dsp_h - 1 - 2*brdrW - menu_h;
-
- - brdr_pixel = myWhitePixel;
- - bg_pixel = myBlackPixel;
- -
- if ((window = XCreateSimpleWindow (mainDisplay, rootWindow, OrigX, OrigY,
- ! menu_w, menu_h, 2*brdrW, brdr_pixel, bg_pixel)) == 0)
- { printf ("Could not create desired menu window!\n"); exit (-1); }
-
- win_attrs.save_under = True;
- ! XChangeWindowAttributes (mainDisplay, window, CWSaveUnder, &win_attrs);
-
- old_selected = INVALID;
- --- 78,89 ----
- OrigY = dsp_h - 1 - 2*brdrW - menu_h;
-
- if ((window = XCreateSimpleWindow (mainDisplay, rootWindow, OrigX, OrigY,
- ! menu_w, menu_h, 2*brdrW, myBorderPixel, myBgPixel)) == 0)
- { printf ("Could not create desired menu window!\n"); exit (-1); }
-
- win_attrs.save_under = True;
- ! win_attrs.override_redirect = True;
- ! XChangeWindowAttributes (mainDisplay, window,
- ! CWSaveUnder | CWOverrideRedirect, &win_attrs);
-
- old_selected = INVALID;
- ***************
- *** 92,96 ****
- --- 92,99 ----
- XMapWindow (mainDisplay, window);
- XSelectInput (mainDisplay, window, ExposureMask);
- + XWarpPointer (mainDisplay, None, rootWindow, 0, 0, 0, 0, OrigX-2, OrigY-2);
-
- + XSync (mainDisplay, False);
- +
- XQueryPointer (mainDisplay, window, &root_win, &child_win, &root_x,
- &root_y, &x, &y, &status);
- ***************
- *** 98,133 ****
- while (XCheckWindowEvent (mainDisplay, window, ExposureMask, &input)) ;
-
- ! while (menuing)
- {
- ! if (XPending (mainDisplay) != 0)
- {
- ! XNextEvent (mainDisplay, &input);
- ! if (input.type == Expose)
- ! {
- ! y = defaultFontAsc;
- ! if (MultiColor)
- ! {
- ! for (i = 0; i < Entries; i++, y += defaultFontHeight)
- ! {
- ! XSetForeground (mainDisplay, textMenuGC, ForeColors[i]);
- ! XDrawString (mainDisplay, window, textMenuGC, 0, y,
- ! Strings[i], len[i]);
- ! }
- ! }
- ! else
- ! {
- ! XSetForeground (mainDisplay, textMenuGC, ForeColors[0]);
- ! for (i = 0; i < Entries; i++, y += defaultFontHeight)
- ! XDrawString (mainDisplay, window, textMenuGC, 0, y,
- ! Strings[i], len[i]);
- ! }
- ! XGrabPointer (mainDisplay, window, FALSE, ButtonReleaseMask,
- ! GrabModeAsync, GrabModeAsync, None, handCursor, CurrentTime);
- ! XWarpPointer (mainDisplay, None, rootWindow, 0, 0, 0, 0, OrigX-2,
- ! OrigY-2);
- ! continue;
- ! }
- }
-
- XQueryPointer (mainDisplay, window, &root_win, &child_win, &root_x,
- &root_y, &x, &y, &status);
- --- 101,126 ----
- while (XCheckWindowEvent (mainDisplay, window, ExposureMask, &input)) ;
-
- ! y = defaultFontAsc;
- ! if (MultiColor)
- {
- ! for (i = 0; i < Entries; i++, y += defaultFontHeight)
- {
- ! XSetForeground (mainDisplay, textMenuGC, ForeColors[i]);
- ! XDrawString (mainDisplay, window, textMenuGC, 0, y,
- ! Strings[i], len[i]);
- }
- + }
- + else
- + {
- + XSetForeground (mainDisplay, textMenuGC, ForeColors[0]);
- + for (i = 0; i < Entries; i++, y += defaultFontHeight)
- + XDrawString (mainDisplay, window, textMenuGC, 0, y,
- + Strings[i], len[i]);
- + }
- + XGrabPointer (mainDisplay, window, FALSE, None,
- + GrabModeAsync, GrabModeAsync, None, handCursor, CurrentTime);
-
- + while (menuing)
- + {
- XQueryPointer (mainDisplay, window, &root_win, &child_win, &root_x,
- &root_y, &x, &y, &status);
- ***************
- *** 152,156 ****
- if (old_selected != INVALID && Valid[old_selected])
- {
- ! XSetForeground (mainDisplay, textMenuGC, bg_pixel);
- XFillRectangle (mainDisplay, window, textMenuGC, 0,
- old_selected*defaultFontHeight, menu_w, defaultFontHeight);
- --- 145,149 ----
- if (old_selected != INVALID && Valid[old_selected])
- {
- ! XSetForeground (mainDisplay, textMenuGC, myBgPixel);
- XFillRectangle (mainDisplay, window, textMenuGC, 0,
- old_selected*defaultFontHeight, menu_w, defaultFontHeight);
- ***************
- *** 167,171 ****
- XFillRectangle (mainDisplay, window, textMenuGC, 0,
- new_selected*defaultFontHeight, menu_w, defaultFontHeight);
- ! XSetForeground (mainDisplay, textMenuGC, bg_pixel);
- XDrawString (mainDisplay, window, textMenuGC, 0,
- defaultFontAsc+new_selected*defaultFontHeight,
- --- 160,164 ----
- XFillRectangle (mainDisplay, window, textMenuGC, 0,
- new_selected*defaultFontHeight, menu_w, defaultFontHeight);
- ! XSetForeground (mainDisplay, textMenuGC, myBgPixel);
- XDrawString (mainDisplay, window, textMenuGC, 0,
- defaultFontAsc+new_selected*defaultFontHeight,
- ***************
- *** 179,183 ****
- if (Valid[old_selected])
- {
- ! XSetForeground (mainDisplay, textMenuGC, bg_pixel);
- XFillRectangle (mainDisplay, window, textMenuGC, 0,
- old_selected*defaultFontHeight, menu_w, defaultFontHeight);
- --- 172,176 ----
- if (Valid[old_selected])
- {
- ! XSetForeground (mainDisplay, textMenuGC, myBgPixel);
- XFillRectangle (mainDisplay, window, textMenuGC, 0,
- old_selected*defaultFontHeight, menu_w, defaultFontHeight);
- ***************
- *** 210,214 ****
- int rc = INVALID, old_i, old_j, k, toggle = 0, dsp_w, dsp_h;
- unsigned int status;
- ! int brdr_pixel, bg_pixel, root_x, root_y;
- XGCValues values;
- XEvent input;
- --- 203,207 ----
- int rc = INVALID, old_i, old_j, k, toggle = 0, dsp_w, dsp_h;
- unsigned int status;
- ! int root_x, root_y;
- XGCValues values;
- XEvent input;
- ***************
- *** 226,238 ****
- OrigY = dsp_h - 1 - 2*brdrW - menu_h;
-
- - brdr_pixel = myWhitePixel;
- - bg_pixel = myBlackPixel;
- -
- if ((window = XCreateSimpleWindow (mainDisplay, rootWindow, OrigX, OrigY,
- ! menu_w, menu_h, 2*brdrW, brdr_pixel, bg_pixel)) == 0)
- { printf ("Could not create desired menu window!\n"); exit (-1); }
-
- win_attrs.save_under = True;
- ! XChangeWindowAttributes (mainDisplay, window, CWSaveUnder, &win_attrs);
-
- old_selected = INVALID;
- --- 219,230 ----
- OrigY = dsp_h - 1 - 2*brdrW - menu_h;
-
- if ((window = XCreateSimpleWindow (mainDisplay, rootWindow, OrigX, OrigY,
- ! menu_w, menu_h, 2*brdrW, myBorderPixel, myBgPixel)) == 0)
- { printf ("Could not create desired menu window!\n"); exit (-1); }
-
- win_attrs.save_under = True;
- ! win_attrs.override_redirect = True;
- ! XChangeWindowAttributes (mainDisplay, window,
- ! CWSaveUnder | CWOverrideRedirect, &win_attrs);
-
- old_selected = INVALID;
- ***************
- *** 241,245 ****
- --- 233,240 ----
- XMapWindow (mainDisplay, window);
- XSelectInput (mainDisplay, window, ExposureMask);
- + XWarpPointer (mainDisplay, None, rootWindow, 0, 0, 0, 0, OrigX-2, OrigY-2);
-
- + XSync (mainDisplay, False);
- +
- XQueryPointer (mainDisplay, window, &root_win, &child_win, &root_x,
- &root_y, &x, &y, &status);
- ***************
- *** 247,288 ****
- while (XCheckWindowEvent (mainDisplay, window, ExposureMask, &input)) ;
-
- ! while (menuing)
- ! {
- ! if (XPending (mainDisplay) != 0)
- {
- ! XNextEvent (mainDisplay, &input);
- ! if (input.type == Expose)
- {
- ! for (i = 0; i < Rows; i++)
- ! for (j = 0; j < Cols; j++)
- ! {
- ! k = i + j * Rows;
- ! if (MultiColor)
- ! {
- ! if (k >= Entries)
- ! values.foreground = myBlackPixel;
- ! else
- ! values.foreground = ForeColors[k];
- ! values.stipple = patPixmap[1];
- ! XChangeGC (mainDisplay, rasterGC,
- ! GCForeground | GCStipple, &values);
- ! XFillRectangle (mainDisplay, window, rasterGC,
- ! j*W, i*H, W, H);
- ! }
- ! else
- ! {
- ! XSetStipple (mainDisplay, rasterGC, PxMp[k]);
- ! XFillRectangle (mainDisplay, window, rasterGC,
- ! j*W, i*H, W, H);
- ! }
- ! }
- ! XGrabPointer (mainDisplay, window, FALSE, ButtonReleaseMask,
- ! GrabModeAsync, GrabModeAsync, None, handCursor, CurrentTime);
- ! XWarpPointer (mainDisplay, None, rootWindow, 0, 0, 0, 0, OrigX-2,
- ! OrigY-2);
- ! continue;
- }
- }
-
- XQueryPointer (mainDisplay, window, &root_win, &child_win, &root_x,
- &root_y, &x, &y, &status);
- --- 242,272 ----
- while (XCheckWindowEvent (mainDisplay, window, ExposureMask, &input)) ;
-
- ! for (i = 0; i < Rows; i++)
- ! for (j = 0; j < Cols; j++)
- {
- ! k = i + j * Rows;
- ! if (MultiColor)
- {
- ! if (k >= Entries)
- ! values.foreground = myBgPixel;
- ! else
- ! values.foreground = ForeColors[k];
- ! values.stipple = patPixmap[1];
- ! XChangeGC (mainDisplay, rasterGC,
- ! GCForeground | GCStipple, &values);
- ! XFillRectangle (mainDisplay, window, rasterGC, j*W, i*H, W, H);
- }
- + else
- + {
- + XSetStipple (mainDisplay, rasterGC, PxMp[k]);
- + XFillRectangle (mainDisplay, window, rasterGC, j*W, i*H, W, H);
- + }
- }
-
- + XGrabPointer (mainDisplay, window, FALSE, ButtonReleaseMask,
- + GrabModeAsync, GrabModeAsync, None, handCursor, CurrentTime);
- +
- + while (menuing)
- + {
- XQueryPointer (mainDisplay, window, &root_win, &child_win, &root_x,
- &root_y, &x, &y, &status);
- ***************
- *** 314,318 ****
- {
- if (old_selected >= Entries)
- ! values.foreground = myBlackPixel;
- else
- values.foreground = ForeColors[old_selected];
- --- 298,302 ----
- {
- if (old_selected >= Entries)
- ! values.foreground = myBgPixel;
- else
- values.foreground = ForeColors[old_selected];
- ***************
- *** 325,329 ****
- else
- {
- ! values.foreground = myWhitePixel;
- values.stipple = PxMp[old_selected];
- XChangeGC (mainDisplay, rasterGC,
- --- 309,313 ----
- else
- {
- ! values.foreground = myFgPixel;
- values.stipple = PxMp[old_selected];
- XChangeGC (mainDisplay, rasterGC,
- ***************
- *** 353,357 ****
- {
- if (old_selected >= Entries)
- ! values.foreground = myBlackPixel;
- else
- values.foreground = ForeColors[old_selected];
- --- 337,341 ----
- {
- if (old_selected >= Entries)
- ! values.foreground = myBgPixel;
- else
- values.foreground = ForeColors[old_selected];
- ***************
- *** 364,368 ****
- else
- {
- ! values.foreground = myWhitePixel;
- values.stipple = PxMp[old_selected];
- XChangeGC (mainDisplay, rasterGC,
- --- 348,352 ----
- else
- {
- ! values.foreground = myFgPixel;
- values.stipple = PxMp[old_selected];
- XChangeGC (mainDisplay, rasterGC,
- ***************
- *** 374,378 ****
- }
- }
- ! values.foreground = myWhitePixel;
- XChangeGC (mainDisplay, rasterGC, GCForeground, &values);
-
- --- 358,362 ----
- }
- }
- ! values.foreground = myFgPixel;
- XChangeGC (mainDisplay, rasterGC, GCForeground, &values);
-
- ***************
- *** 457,468 ****
- {
- int y, len, amount, left;
- ! char file_name[80], s[256];
-
- ! len = strlen (TOOL_NAME);
- amount = defaultFontWidth * len;
- left = (titleWindowW - amount) / 2;
-
- ! XDrawString (mainDisplay, titleWindow, defaultGC, left,
- ! defaultFontAsc+2, TOOL_NAME, len);
-
- for (y = 4; y < titleWindowH/2-4; y += 2)
- --- 441,456 ----
- {
- int y, len, amount, left;
- ! char file_name[MAXPATHLENGTH], s[MAXPATHLENGTH];
-
- ! strcpy (s, TOOL_NAME);
- ! strcat (s, "-");
- ! strcat (s, version_string);
- !
- ! len = strlen (s);
- amount = defaultFontWidth * len;
- left = (titleWindowW - amount) / 2;
-
- ! XDrawString (mainDisplay, titleWindow, defaultGC, left, defaultFontAsc+2, s,
- ! len);
-
- for (y = 4; y < titleWindowH/2-4; y += 2)
- ***************
- *** 474,477 ****
- --- 462,466 ----
- }
-
- + s[0] = '\0';
- XClearArea (mainDisplay, titleWindow, 0, titleWindowH/2, titleWindowW,
- titleWindowH/2, FALSE);
- ***************
- *** 482,493 ****
- if (*curDomainName != '\0') strcat (s, "/");
- strcat (s, file_name);
- ! len = strlen(s);
- ! left = 2+(len+1)*defaultFontWidth;
-
- XDrawString (mainDisplay, titleWindow, defaultGC, 2,
- titleWindowH/2+defaultFontAsc+2, s, len);
- }
- - else
- - left = 2;
- }
-
- --- 471,484 ----
- if (*curDomainName != '\0') strcat (s, "/");
- strcat (s, file_name);
- ! }
-
- + if (fileModified) strcat (s, " [Modified]");
- +
- + if (s[0] != '\0')
- + {
- + len = strlen (s);
- XDrawString (mainDisplay, titleWindow, defaultGC, 2,
- titleWindowH/2+defaultFontAsc+2, s, len);
- }
- }
-
- ***************
- *** 508,512 ****
- {
- struct ObjRec * obj_ptr;
- ! char s[256], * c_ptr;
- FILE * fp;
- int ltx = 0, lty = 0, rbx = 0, rby = 0, seen_obj = FALSE;
- --- 499,503 ----
- {
- struct ObjRec * obj_ptr;
- ! char s[MAXPATHLENGTH], * c_ptr;
- FILE * fp;
- int ltx = 0, lty = 0, rbx = 0, rby = 0, seen_obj = FALSE;
- ***************
- *** 591,596 ****
- XGCValues values;
-
- ! values.foreground = myWhitePixel;
- ! values.background = myBlackPixel;
- values.fill_style = FillSolid;
- values.font = defaultFontPtr->fid;
- --- 582,587 ----
- XGCValues values;
-
- ! values.foreground = myFgPixel;
- ! values.background = myBgPixel;
- values.fill_style = FillSolid;
- values.font = defaultFontPtr->fid;
- ***************
- *** 673,681 ****
- if ((iconBaseWindow = XCreateSimpleWindow (mainDisplay, rootWindow,
- sizehints.x, sizehints.y, iconWindowW+2*brdrW, iconWindowH+2*brdrW,
- ! brdrW, myWhitePixel, myBlackPixel)) == 0)
- { printf ("Could not create icon window!\n"); exit(1); }
-
- if ((iconWindow = XCreateSimpleWindow (mainDisplay, iconBaseWindow, 0, 0,
- ! iconWindowW, iconWindowH, brdrW, myWhitePixel, myBlackPixel)) == 0)
- { printf ("Could not create icon window!\n"); exit(1); }
-
- --- 664,672 ----
- if ((iconBaseWindow = XCreateSimpleWindow (mainDisplay, rootWindow,
- sizehints.x, sizehints.y, iconWindowW+2*brdrW, iconWindowH+2*brdrW,
- ! brdrW, myBorderPixel, myBgPixel)) == 0)
- { printf ("Could not create icon window!\n"); exit(1); }
-
- if ((iconWindow = XCreateSimpleWindow (mainDisplay, iconBaseWindow, 0, 0,
- ! iconWindowW, iconWindowH, brdrW, myBorderPixel, myBgPixel)) == 0)
- { printf ("Could not create icon window!\n"); exit(1); }
-
- *** move.c.orig Wed Jun 27 13:28:40 1990
- --- move.c Wed Jun 27 13:28:42 1990
- ***************
- *** 7,11 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/move.c,v 1.2 90/05/17 09:17:01 william Exp $";
- #endif
- #include <stdio.h>
- --- 7,11 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/move.c,v 1.5 90/06/26 00:11:08 william Exp $";
- #endif
- #include <stdio.h>
- ***************
- *** 124,135 ****
- struct PolygonRec * polygon_ptr;
- struct BBRec bbox, o_bbox;
- - Window root_win, child_win;
- - int root_x, root_y;
- XPoint * v;
- - unsigned int status;
- - XButtonEvent input;
- int ltx, lty, rbx, rby, sel_ltx, sel_lty, sel_rbx, sel_rby;
- int x, y, moving = TRUE, dx, dy;
- ! int grid_x = OrigX, grid_y = OrigY, new_grid_x, new_grid_y;
-
- sel_ltx = OFFSET_X(selLtX) - 1; sel_lty = OFFSET_Y(selLtY) - 1;
- --- 124,132 ----
- struct PolygonRec * polygon_ptr;
- struct BBRec bbox, o_bbox;
- XPoint * v;
- int ltx, lty, rbx, rby, sel_ltx, sel_lty, sel_rbx, sel_rby;
- int x, y, moving = TRUE, dx, dy;
- ! int grid_x = OrigX, grid_y = OrigY;
- ! XEvent input;
-
- sel_ltx = OFFSET_X(selLtX) - 1; sel_lty = OFFSET_Y(selLtY) - 1;
- ***************
- *** 188,193 ****
- }
-
- ! XGrabPointer (mainDisplay, drawWindow, FALSE, ButtonReleaseMask,
- ! GrabModeAsync, GrabModeAsync, None, defaultCursor, CurrentTime);
-
- dx = dy = 0;
- --- 185,191 ----
- }
-
- ! XGrabPointer (mainDisplay, drawWindow, FALSE,
- ! PointerMotionMask | ButtonReleaseMask,
- ! GrabModeAsync, GrabModeAsync, None, handCursor, CurrentTime);
-
- dx = dy = 0;
- ***************
- *** 195,255 ****
- while (moving)
- {
- ! XQueryPointer (mainDisplay, drawWindow, &root_win, &child_win,
- ! &root_x, &root_y, &x, &y, &status);
- !
- ! GridXY (x, y, &new_grid_x, &new_grid_y);
- ! if (new_grid_x==grid_x && new_grid_y==grid_y && (status & Button1Mask)!=0)
- ! continue;
- !
- ! grid_x = new_grid_x;
- ! grid_y = new_grid_y;
- !
- ! switch (ObjPtr->type)
- {
- - case OBJ_BOX:
- - case OBJ_TEXT:
- - SelBox (drawWindow, revDefaultGC, ltx+dx, lty+dy, rbx+dx, rby+dy);
- - break;
- - case OBJ_OVAL:
- - o_bbox.ltx = bbox.ltx + dx; o_bbox.lty = bbox.lty + dy;
- - o_bbox.rbx = bbox.rbx + dx; o_bbox.rby = bbox.rby + dy;
- - MyOval (drawWindow, revDefaultGC, o_bbox);
- - break;
- - case OBJ_POLY:
- - case OBJ_POLYGON:
- - for (i = 0; i < num_pts; i++)
- - {
- - v[i].x += dx;
- - v[i].y += dy;
- - }
- - XDrawLines (mainDisplay, drawWindow, revDefaultGC, v, num_pts,
- - CoordModeOrigin);
- - for (i = 0; i < num_pts; i++)
- - {
- - v[i].x -= dx;
- - v[i].y -= dy;
- - }
- - break;
- - case OBJ_GROUP:
- - case OBJ_SYM:
- - case OBJ_ICON:
- - SelBox (drawWindow, revDefaultGC, ltx+dx, lty+dy, rbx+dx, rby+dy);
- - break;
- - }
- - SelBox (drawWindow, revDefaultGC, sel_ltx+dx, sel_lty+dy, sel_rbx+dx,
- - sel_rby+dy);
- -
- - dx = grid_x - OrigX;
- - dy = grid_y - OrigY;
- -
- - if ((status & Button1Mask) == 0)
- - {
- - /* mouse is up */
- XUngrabPointer (mainDisplay, CurrentTime);
- MarkRulers (grid_x, grid_y);
- moving = FALSE;
- switch (ObjPtr->type)
- {
- case OBJ_POLY:
- case OBJ_POLYGON: cfree(v); break;
- }
- --- 193,244 ----
- while (moving)
- {
- ! XNextEvent (mainDisplay, &input);
- ! if (input.type == ButtonRelease)
- {
- XUngrabPointer (mainDisplay, CurrentTime);
- MarkRulers (grid_x, grid_y);
- moving = FALSE;
- +
- switch (ObjPtr->type)
- {
- + case OBJ_BOX:
- + case OBJ_TEXT:
- + SelBox (drawWindow, revDefaultGC, ltx+dx, lty+dy, rbx+dx, rby+dy);
- + break;
- + case OBJ_OVAL:
- + o_bbox.ltx = bbox.ltx + dx; o_bbox.lty = bbox.lty + dy;
- + o_bbox.rbx = bbox.rbx + dx; o_bbox.rby = bbox.rby + dy;
- + MyOval (drawWindow, revDefaultGC, o_bbox);
- + break;
- case OBJ_POLY:
- + case OBJ_POLYGON:
- + for (i = 0; i < num_pts; i++)
- + {
- + v[i].x += dx;
- + v[i].y += dy;
- + }
- + XDrawLines (mainDisplay, drawWindow, revDefaultGC, v, num_pts,
- + CoordModeOrigin);
- + for (i = 0; i < num_pts; i++)
- + {
- + v[i].x -= dx;
- + v[i].y -= dy;
- + }
- + break;
- + case OBJ_GROUP:
- + case OBJ_SYM:
- + case OBJ_ICON:
- + SelBox (drawWindow, revDefaultGC, ltx+dx, lty+dy, rbx+dx, rby+dy);
- + break;
- + }
- + SelBox (drawWindow, revDefaultGC, sel_ltx+dx, sel_lty+dy, sel_rbx+dx,
- + sel_rby+dy);
- +
- + dx = grid_x - OrigX;
- + dy = grid_y - OrigY;
- +
- + switch (ObjPtr->type)
- + {
- + case OBJ_POLY:
- case OBJ_POLYGON: cfree(v); break;
- }
- ***************
- *** 271,279 ****
- dupDy += dy;
- }
- ! fileModified = TRUE;
- }
- }
- ! else
- {
- MarkRulers (grid_x, grid_y);
- SelBox (drawWindow, revDefaultGC, sel_ltx+dx, sel_lty+dy, sel_rbx+dx,
- --- 260,310 ----
- dupDy += dy;
- }
- ! SetFileModified (TRUE);
- }
- }
- ! else if (input.type == MotionNotify)
- {
- + x = input.xmotion.x;
- + y = input.xmotion.y;
- + GridXY (x, y, &grid_x, &grid_y);
- +
- + switch (ObjPtr->type)
- + {
- + case OBJ_BOX:
- + case OBJ_TEXT:
- + SelBox (drawWindow, revDefaultGC, ltx+dx, lty+dy, rbx+dx, rby+dy);
- + break;
- + case OBJ_OVAL:
- + o_bbox.ltx = bbox.ltx + dx; o_bbox.lty = bbox.lty + dy;
- + o_bbox.rbx = bbox.rbx + dx; o_bbox.rby = bbox.rby + dy;
- + MyOval (drawWindow, revDefaultGC, o_bbox);
- + break;
- + case OBJ_POLY:
- + case OBJ_POLYGON:
- + for (i = 0; i < num_pts; i++)
- + {
- + v[i].x += dx;
- + v[i].y += dy;
- + }
- + XDrawLines (mainDisplay, drawWindow, revDefaultGC, v, num_pts,
- + CoordModeOrigin);
- + for (i = 0; i < num_pts; i++)
- + {
- + v[i].x -= dx;
- + v[i].y -= dy;
- + }
- + break;
- + case OBJ_GROUP:
- + case OBJ_SYM:
- + case OBJ_ICON:
- + SelBox (drawWindow, revDefaultGC, ltx+dx, lty+dy, rbx+dx, rby+dy);
- + break;
- + }
- + SelBox (drawWindow, revDefaultGC, sel_ltx+dx, sel_lty+dy, sel_rbx+dx,
- + sel_rby+dy);
- +
- + dx = grid_x - OrigX;
- + dy = grid_y - OrigY;
- +
- MarkRulers (grid_x, grid_y);
- SelBox (drawWindow, revDefaultGC, sel_ltx+dx, sel_lty+dy, sel_rbx+dx,
- *** names.c.orig Wed Jun 27 13:28:49 1990
- --- names.c Wed Jun 27 13:28:51 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/names.c,v 1.1 90/04/01 22:16:26 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/names.c,v 1.4 90/05/22 15:49:54 william Exp $";
- #endif
-
- ***************
- *** 57,62 ****
- XGCValues values;
-
- ! values.foreground = myWhitePixel;
- ! values.background = myBlackPixel;
- values.fill_style = FillSolid;
- values.font = defaultFontPtr->fid;
- --- 57,62 ----
- XGCValues values;
-
- ! values.foreground = myFgPixel;
- ! values.background = myBgPixel;
- values.fill_style = FillSolid;
- values.font = defaultFontPtr->fid;
- ***************
- *** 64,69 ****
- GCForeground | GCBackground | GCFillStyle | GCFont, &values);
-
- ! values.foreground = myBlackPixel;
- ! values.background = myWhitePixel;
- revNameGC = XCreateGC (mainDisplay, rootWindow,
- GCForeground | GCBackground | GCFillStyle | GCFont, &values);
- --- 64,69 ----
- GCForeground | GCBackground | GCFillStyle | GCFont, &values);
-
- ! values.foreground = myBgPixel;
- ! values.background = myFgPixel;
- revNameGC = XCreateGC (mainDisplay, rootWindow,
- GCForeground | GCBackground | GCFillStyle | GCFont, &values);
- ***************
- *** 105,125 ****
- block_h = (int)(nameScrollAreaH * frac); /* number of pixels */
-
- ! values.foreground = myBlackPixel;
- ! values.background = myWhitePixel;
- values.function = GXcopy;
- values.fill_style = FillSolid;
- XChangeGC (mainDisplay, scrollGC,
- ! GCForeground | GCBackground | GCFunction | GCFillStyle,
- ! &values);
- XFillRectangle (mainDisplay, nameScrollWin, scrollGC, 0, scrollBarW,
- scrollBarW, nameScrollAreaH);
-
- ! values.foreground = myWhitePixel;
- ! values.background = myBlackPixel;
- values.fill_style = FillOpaqueStippled;
- values.stipple = patPixmap[SCROLLPAT];
- XChangeGC (mainDisplay, scrollGC,
- ! GCForeground | GCBackground | GCFillStyle | GCStipple,
- ! &values);
- XFillRectangle (mainDisplay, nameScrollWin, scrollGC, 0,
- scrollBarW+block_start, scrollBarW, block_h);
- --- 105,123 ----
- block_h = (int)(nameScrollAreaH * frac); /* number of pixels */
-
- ! values.foreground = myBgPixel;
- ! values.background = myFgPixel;
- values.function = GXcopy;
- values.fill_style = FillSolid;
- XChangeGC (mainDisplay, scrollGC,
- ! GCForeground | GCBackground | GCFunction | GCFillStyle, &values);
- XFillRectangle (mainDisplay, nameScrollWin, scrollGC, 0, scrollBarW,
- scrollBarW, nameScrollAreaH);
-
- ! values.foreground = myFgPixel;
- ! values.background = myBgPixel;
- values.fill_style = FillOpaqueStippled;
- values.stipple = patPixmap[SCROLLPAT];
- XChangeGC (mainDisplay, scrollGC,
- ! GCForeground | GCBackground | GCFillStyle | GCStipple, &values);
- XFillRectangle (mainDisplay, nameScrollWin, scrollGC, 0,
- scrollBarW+block_start, scrollBarW, block_h);
- ***************
- *** 174,178 ****
-
- static
- ! void RedrawNameBaseWindow (Str, str_start, button_start)
- char * Str;
- int str_start, button_start;
- --- 172,176 ----
-
- static
- ! void RedrawNameBaseWindow (Str, str_start, button_start, W, H)
- char * Str;
- int str_start, button_start;
- ***************
- *** 180,183 ****
- --- 178,182 ----
- int top = defaultFontAsc+2;
-
- + XDrawRectangle (mainDisplay, nameBaseWin, nameGC, 0, 0, W-1, H-1);
- XDrawString (mainDisplay, nameBaseWin, nameGC, str_start,
- ROW_HEIGHT+top, Str, strlen(Str));
- ***************
- *** 365,369 ****
-
- if ((nameBaseWin = XCreateSimpleWindow (mainDisplay, rootWindow,
- ! win_x, win_y, w, h, brdrW, myWhitePixel, myBlackPixel)) == 0)
- { printf ("Could not create desired popup window!\n"); exit (-1); }
-
- --- 364,368 ----
-
- if ((nameBaseWin = XCreateSimpleWindow (mainDisplay, rootWindow,
- ! win_x, win_y, w, h, brdrW, myBorderPixel, myBgPixel)) == 0)
- { printf ("Could not create desired popup window!\n"); exit (-1); }
-
- ***************
- *** 371,376 ****
-
- if ((nameDspWin = XCreateSimpleWindow (mainDisplay, nameBaseWin, graph_start,
- ! 3*ROW_HEIGHT, nameDspW, nameDspH, brdrW, myWhitePixel,
- ! myBlackPixel)) == 0)
- { printf ("Could not create desired popup window!\n"); exit (-1); }
-
- --- 370,375 ----
-
- if ((nameDspWin = XCreateSimpleWindow (mainDisplay, nameBaseWin, graph_start,
- ! 3*ROW_HEIGHT, nameDspW, nameDspH, brdrW, myBorderPixel,
- ! myBgPixel)) == 0)
- { printf ("Could not create desired popup window!\n"); exit (-1); }
-
- ***************
- *** 377,381 ****
- if ((nameScrollWin = XCreateSimpleWindow (mainDisplay, nameBaseWin,
- graph_start+nameDspWinW, 3*ROW_HEIGHT, scrollBarW, nameDspH,
- ! brdrW, myWhitePixel, myBlackPixel)) == 0)
- { printf ("Could not create desired popup scroll window!\n"); exit (-1); }
-
- --- 376,380 ----
- if ((nameScrollWin = XCreateSimpleWindow (mainDisplay, nameBaseWin,
- graph_start+nameDspWinW, 3*ROW_HEIGHT, scrollBarW, nameDspH,
- ! brdrW, myBorderPixel, myBgPixel)) == 0)
- { printf ("Could not create desired popup scroll window!\n"); exit (-1); }
-
- ***************
- *** 403,407 ****
- {
- if (input.xany.window == nameBaseWin)
- ! RedrawNameBaseWindow (Str, str_start, button_start);
- else if (input.xany.window == nameScrollWin)
- RedrawNameScrollWin ();
- --- 402,406 ----
- {
- if (input.xany.window == nameBaseWin)
- ! RedrawNameBaseWindow (Str, str_start, button_start, w, h);
- else if (input.xany.window == nameScrollWin)
- RedrawNameScrollWin ();
- ***************
- *** 513,517 ****
- struct direct * d;
- int len, ext_len, count = 0;
- ! char ext[80];
-
- if (*Path == '\0')
- --- 512,516 ----
- struct direct * d;
- int len, ext_len, count = 0;
- ! char ext[MAXPATHLENGTH];
-
- if (*Path == '\0')
- ***************
- *** 572,576 ****
- {
- register int i, index;
- ! char s[80], full_name[MAXPATHLENGTH];
- DspList * dsp_ptr;
-
- --- 571,575 ----
- {
- register int i, index;
- ! char s[MAXPATHLENGTH], full_name[MAXPATHLENGTH];
- DspList * dsp_ptr;
-
- ***************
- *** 673,677 ****
- {
- register int i, index;
- ! char s[80];
- DspList * dsp_ptr;
-
- --- 672,676 ----
- {
- register int i, index;
- ! char s[MAXPATHLENGTH];
- DspList * dsp_ptr;
-
- *** oval.c.orig Wed Jun 27 13:28:59 1990
- --- oval.c Wed Jun 27 13:29:00 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/oval.c,v 1.2 90/05/16 08:30:59 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/oval.c,v 1.5 90/06/26 08:52:36 william Exp $";
- #endif
-
- ***************
- *** 175,179 ****
- if (fill != 0)
- {
- ! values.foreground = (fill == 2) ? myBlackPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- --- 175,179 ----
- if (fill != 0)
- {
- ! values.foreground = (fill == 2) ? myBgPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- ***************
- *** 186,190 ****
- if (pen != 0)
- {
- ! values.foreground = (pen == 2) ? myBlackPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- --- 186,190 ----
- if (pen != 0)
- {
- ! values.foreground = (pen == 2) ? myBgPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- ***************
- *** 301,305 ****
- DrawOvalObj (drawWindow, drawOrigX, drawOrigY, topObj);
- ovalDrawn = TRUE;
- ! fileModified = TRUE;
- }
- }
- --- 301,305 ----
- DrawOvalObj (drawWindow, drawOrigX, drawOrigY, topObj);
- ovalDrawn = TRUE;
- ! SetFileModified (TRUE);
- }
- }
- *** pattern.c.orig Wed Jun 27 13:29:07 1990
- --- pattern.c Wed Jun 27 13:29:09 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/pattern.c,v 1.1 90/04/01 22:16:30 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/pattern.c,v 1.2 90/06/26 00:11:14 william Exp $";
- #endif
-
- ***************
- *** 147,151 ****
- if (changed)
- {
- ! fileModified = TRUE;
- HighLightReverse ();
- RedrawAnArea (botObj, selLtX-(1<<zoomScale), selLtY-(1<<zoomScale),
- --- 147,151 ----
- if (changed)
- {
- ! SetFileModified (TRUE);
- HighLightReverse ();
- RedrawAnArea (botObj, selLtX-(1<<zoomScale), selLtY-(1<<zoomScale),
- ***************
- *** 239,243 ****
- if (changed)
- {
- ! fileModified = TRUE;
- HighLightReverse ();
- ltx = selLtX; lty = selLtY; rbx = selRbX; rby = selRbY;
- --- 239,243 ----
- if (changed)
- {
- ! SetFileModified (TRUE);
- HighLightReverse ();
- ltx = selLtX; lty = selLtY; rbx = selRbX; rby = selRbY;
- ***************
- *** 360,364 ****
- if (changed)
- {
- ! fileModified = TRUE;
- HighLightReverse ();
- ltx = selLtX; lty = selLtY; rbx = selRbX; rby = selRbY;
- --- 360,364 ----
- if (changed)
- {
- ! SetFileModified (TRUE);
- HighLightReverse ();
- ltx = selLtX; lty = selLtY; rbx = selRbX; rby = selRbY;
- ***************
- *** 493,497 ****
- if (changed)
- {
- ! fileModified = TRUE;
- HighLightReverse ();
- ltx = selLtX; lty = selLtY; rbx = selRbX; rby = selRbY;
- --- 493,497 ----
- if (changed)
- {
- ! SetFileModified (TRUE);
- HighLightReverse ();
- ltx = selLtX; lty = selLtY; rbx = selRbX; rby = selRbY;
- ***************
- *** 642,646 ****
- if (changed)
- {
- ! fileModified = TRUE;
- HighLightReverse ();
- RedrawAnArea (botObj, selLtX-(1<<zoomScale), selLtY-(1<<zoomScale),
- --- 642,646 ----
- if (changed)
- {
- ! SetFileModified (TRUE);
- HighLightReverse ();
- RedrawAnArea (botObj, selLtX-(1<<zoomScale), selLtY-(1<<zoomScale),
- *** poly.c.orig Wed Jun 27 13:29:17 1990
- --- poly.c Wed Jun 27 13:29:19 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/poly.c,v 1.2 90/05/17 09:17:31 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/poly.c,v 1.4 90/06/26 00:11:18 william Exp $";
- #endif
-
- ***************
- *** 249,253 ****
- else if (P != 0)
- {
- ! values.foreground = (P == 2) ? myBlackPixel : Pix;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- --- 249,253 ----
- else if (P != 0)
- {
- ! values.foreground = (P == 2) ? myBgPixel : Pix;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- ***************
- *** 421,425 ****
- topObj->bbox.rby+(1<<zoomScale));
- polyDrawn = TRUE;
- ! fileModified = TRUE;
- }
- }
- --- 421,425 ----
- topObj->bbox.rby+(1<<zoomScale));
- polyDrawn = TRUE;
- ! SetFileModified (TRUE);
- }
- }
- ***************
- *** 649,653 ****
- }
- v[n].x = v[0].x; v[n].y = v[0].y;
- ! values.foreground = (fill == BACKPAT) ? myBlackPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- --- 649,653 ----
- }
- v[n].x = v[0].x; v[n].y = v[0].y;
- ! values.foreground = (fill == BACKPAT) ? myBgPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- *** polygon.c.orig Wed Jun 27 13:29:28 1990
- --- polygon.c Wed Jun 27 13:29:30 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/polygon.c,v 1.1 90/04/01 22:16:34 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/polygon.c,v 1.3 90/06/26 00:11:22 william Exp $";
- #endif
-
- ***************
- *** 211,215 ****
- if (fill != 0)
- {
- ! values.foreground = (fill == 2) ? myBlackPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- --- 211,215 ----
- if (fill != 0)
- {
- ! values.foreground = (fill == 2) ? myBgPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- ***************
- *** 223,227 ****
- if (pen != 0)
- {
- ! values.foreground = (pen == 2) ? myBlackPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- --- 223,227 ----
- if (pen != 0)
- {
- ! values.foreground = (pen == 2) ? myBgPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- ***************
- *** 354,358 ****
- if (penPat != 0 && (button_ev->button == Button1 || num_pts != 1))
- {
- ! values.foreground = (penPat == 2) ? myBlackPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- --- 354,358 ----
- if (penPat != 0 && (button_ev->button == Button1 || num_pts != 1))
- {
- ! values.foreground = (penPat == 2) ? myBgPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- ***************
- *** 401,405 ****
- }
-
- ! values.foreground = (penPat == 2) ? myBlackPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- --- 401,405 ----
- }
-
- ! values.foreground = (penPat == 2) ? myBgPixel : pixel;
- values.function = GXcopy;
- values.fill_style = FillOpaqueStippled;
- ***************
- *** 456,460 ****
-
- polygonDrawn = TRUE;
- ! fileModified = TRUE;
- break;
- }
- --- 456,460 ----
-
- polygonDrawn = TRUE;
- ! SetFileModified (TRUE);
- break;
- }
- *** prtgif.c.orig Wed Jun 27 13:29:41 1990
- --- prtgif.c Wed Jun 27 13:29:42 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/prtgif.c,v 1.1 90/05/02 08:23:04 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/prtgif.c,v 1.9 90/06/05 10:09:52 william Exp $";
- #endif
-
- ***************
- *** 32,36 ****
- extern int PDrawReadObj ();
-
- ! static char drawPath[256];
- static short pDrawCursorH[] =
- {
- --- 32,36 ----
- extern int PDrawReadObj ();
-
- ! static char drawPath[MAXSTRING];
- static short pDrawCursorH[] =
- {
- ***************
- *** 293,297 ****
- struct StrRec * s_ptr;
- struct TextRec * text_ptr;
- ! char color_str[20], * s, tmp_str[80], inbuf[255];
- int num_lines, x, y, font, style, size;
- int text_just, rotate, pen;
- --- 293,298 ----
- struct StrRec * s_ptr;
- struct TextRec * text_ptr;
- ! char color_str[80], * s;
- ! char tmp_str[MAXSTRING+1], inbuf[MAXSTRING+1];
- int num_lines, x, y, font, style, size;
- int text_just, rotate, pen;
- ***************
- *** 328,332 ****
- for (i = 0; i < num_lines; i++)
- {
- ! fgets (inbuf, 255, FP);
- strcpy(tmp_str, FindChar ('"', inbuf));
- s = FindChar ('"', tmp_str);
- --- 329,333 ----
- for (i = 0; i < num_lines; i++)
- {
- ! fgets (inbuf, MAXSTRING, FP);
- strcpy(tmp_str, FindChar ('"', inbuf));
- s = FindChar ('"', tmp_str);
- ***************
- *** 430,437 ****
- {
- struct ObjRec * TextObj;
- ! char inbuf[255], * s, name[80], value[80];
- int len, shown, nameshown, inherited;
-
- ! fgets (inbuf, 255, FP);
-
- if (inbuf[0] == ']') return (FALSE);
- --- 431,439 ----
- {
- struct ObjRec * TextObj;
- ! char inbuf[MAXSTRING+1], * s;
- ! char name[MAXSTRING+1], value[MAXSTRING+1];
- int len, shown, nameshown, inherited;
-
- ! fgets (inbuf, MAXSTRING, FP);
-
- if (inbuf[0] == ']') return (FALSE);
- ***************
- *** 472,480 ****
- struct ObjRec * * ObjPtr;
- {
- ! char inbuf[255], obj_name[10], tmp_str[80], * s, * s1;
- int len, id;
- struct AttrRec * top_attr = NULL, * bot_attr = NULL, * attr_ptr;
-
- ! while (fgets (inbuf, 255, FP) != NULL)
- {
- if (inbuf[0] == ']') return (FALSE);
- --- 474,483 ----
- struct ObjRec * * ObjPtr;
- {
- ! char inbuf[MAXSTRING+1], obj_name[10], tmp_str[MAXSTRING+1];
- ! char * s, * s1;
- int len, id;
- struct AttrRec * top_attr = NULL, * bot_attr = NULL, * attr_ptr;
-
- ! while (fgets (inbuf, MAXSTRING, FP) != NULL)
- {
- if (inbuf[0] == ']') return (FALSE);
- ***************
- *** 571,575 ****
- PDrawReadGroupObj (FP, ObjPtr);
- (*ObjPtr)->type = OBJ_ICON;
- ! if (fgets (inbuf, 255, FP) == NULL) return (FALSE);
-
- strcpy(tmp_str, FindChar ('"', inbuf));
- --- 574,578 ----
- PDrawReadGroupObj (FP, ObjPtr);
- (*ObjPtr)->type = OBJ_ICON;
- ! if (fgets (inbuf, MAXSTRING, FP) == NULL) return (FALSE);
-
- strcpy(tmp_str, FindChar ('"', inbuf));
- ***************
- *** 643,660 ****
- {
- register struct ObjRec * obj_ptr;
- ! char cmd[256];
- ! FILE * fp;
-
- if (botObj == NULL) { printf ("No object to print."); return; }
-
- ! system ("rm -f /tmp/DRAW.PS /tmp/DUMP.PS");
- ! if ((fp = fopen ("/tmp/DUMP.PS", "w")) == NULL)
- {
- ! Msg ("Can not create /tmp/DUMP.PS, print aborted.");
- return;
- }
-
- ! printf ("Writing to /tmp/DRAW.PS ...\n");
-
- for (obj_ptr = botObj; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- PDrawDumpAllObj (fp, obj_ptr);
- --- 646,692 ----
- {
- register struct ObjRec * obj_ptr;
- ! char cmd[MAXSTRING+1], tmp_str[MAXSTRING+1];
- ! char tmp_file[MAXSTRING+1], ps_file[MAXSTRING+1];
- ! FILE * fp, * fps;
-
- if (botObj == NULL) { printf ("No object to print."); return; }
-
- ! strcpy (tmp_file, "/tmp/TgifXXXXXX");
- ! mktemp (tmp_file);
- ! unlink (tmp_file);
- !
- ! if ((fp = fopen (tmp_file, "w")) == NULL)
- {
- ! printf ("Can not create $s, print aborted.", tmp_file);
- return;
- }
-
- ! printf ("Writing to %s ...\n", tmp_file);
-
- + fprintf (fp, "%%!\n");
- + DumpBBox (fp);
- + sprintf(ps_file, "%s/.psmac", drawPath);
- + if ((fps = fopen (ps_file, "r")) == NULL)
- + {
- + printf ("Can not find %s, print aborted.\n", ps_file);
- + fclose (fp);
- + unlink (tmp_file);
- + return;
- + }
- + while (fgets (tmp_str, 256, fps) != NULL) /* copy the header file */
- + fputs (tmp_str, fp);
- +
- + fprintf (fp, "gsave\n\n");
- + switch (pageStyle)
- + {
- + case LANDSCAPE:
- + case HIGHLAND:
- + case SLIDELAND: fprintf (fp, "90 rotate\n"); break;
- + }
- + fprintf (fp, "%1d %s mul %1d %s mul translate\n", psDotsPerInch,
- + psXOffStr[pageStyle], psDotsPerInch, psYOffStr[pageStyle]);
- + fprintf (fp, "%s -%s scale\n\n",
- + psScaleStr[pageStyle], psScaleStr[pageStyle]);
- +
- for (obj_ptr = botObj; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- PDrawDumpAllObj (fp, obj_ptr);
- ***************
- *** 664,700 ****
- fclose (fp);
-
- ! switch (pageStyle)
- {
- ! case PORTRAIT:
- ! sprintf (cmd, "cat %s/.psmac %s/.port /tmp/DUMP.PS > /tmp/DRAW.PS",
- ! drawPath, drawPath);
- ! break;
- ! case LANDSCAPE:
- ! sprintf (cmd, "cat %s/.psmac %s/.land /tmp/DUMP.PS > /tmp/DRAW.PS",
- ! drawPath, drawPath);
- ! break;
- ! case HIGHPORT:
- ! sprintf (cmd, "cat %s/.psmac %s/.hiport /tmp/DUMP.PS > /tmp/DRAW.PS",
- ! drawPath, drawPath);
- ! break;
- ! case HIGHLAND:
- ! sprintf (cmd, "cat %s/.psmac %s/.hiland /tmp/DUMP.PS > /tmp/DRAW.PS",
- ! drawPath, drawPath);
- ! break;
- ! case SLIDEPORT:
- ! sprintf (cmd, "cat %s/.psmac %s/.slideport /tmp/DUMP.PS > /tmp/DRAW.PS",
- ! drawPath, drawPath);
- ! break;
- ! case SLIDELAND:
- ! sprintf (cmd, "cat %s/.psmac %s/.slideland /tmp/DUMP.PS > /tmp/DRAW.PS",
- ! drawPath, drawPath);
- ! break;
- }
- ! system (cmd);
- ! chmod ("/tmp/DRAW.PS", 0777);
- ! chmod ("/tmp/DUMP.PS", 0777);
- ! system ("lpr /tmp/DRAW.PS");
-
- ! printf ("/tmp/DRAW.PS printed.\n\n");
- }
-
- --- 696,712 ----
- fclose (fp);
-
- ! sprintf (cmd, "lpr %s 2>&1", tmp_file);
- ! if ((fp = popen (cmd, "r")) == NULL)
- {
- ! printf ("Can not execute '%s', print aborted.\n", cmd);
- ! unlink (tmp_file);
- ! return;
- }
- ! while (fgets (tmp_str, 256, fp) != NULL) sleep (5);
-
- ! pclose (fp);
- ! unlink (tmp_file);
- !
- ! printf ("%s printed.\n\n", tmp_file);
- }
-
- ***************
- *** 703,707 ****
- char * argv[];
- {
- ! char inbuf[256];
- char * c_ptr;
-
- --- 715,719 ----
- char * argv[];
- {
- ! char inbuf[MAXSTRING+1];
- char * c_ptr;
-
- ***************
- *** 709,717 ****
-
- if ((c_ptr = getenv ("TGIFPATH")) == NULL)
- ! strcpy (drawPath, "/u/tangram/u/william/X11/TGIF");
- else
- ! if (strlen (c_ptr) >= 255)
- /* must be an error */
- ! strcpy (drawPath, "/u/tangram/u/william/X11/TGIF");
- else
- strcpy (drawPath, c_ptr);
- --- 721,729 ----
-
- if ((c_ptr = getenv ("TGIFPATH")) == NULL)
- ! strcpy (drawPath, TGIF_PATH);
- else
- ! if (strlen (c_ptr) >= MAXSTRING)
- /* must be an error */
- ! strcpy (drawPath, TGIF_PATH);
- else
- strcpy (drawPath, c_ptr);
- ***************
- *** 721,725 ****
- case 1:
- printf ("\nDraw File Name to Print> ");
- ! while (fgets (inbuf, 255, stdin) != NULL)
- {
- PDrawLoad (inbuf);
- --- 733,737 ----
- case 1:
- printf ("\nDraw File Name to Print> ");
- ! while (fgets (inbuf, MAXSTRING, stdin) != NULL)
- {
- PDrawLoad (inbuf);
- *** raster.c.orig Wed Jun 27 13:29:49 1990
- --- raster.c Wed Jun 27 13:29:51 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/raster.c,v 1.2 90/05/07 15:28:20 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/raster.c,v 1.3 90/05/22 14:16:44 william Exp $";
- #endif
-
- ***************
- *** 129,134 ****
- XGCValues values;
-
- ! values.foreground = myWhitePixel;
- ! values.background = myBlackPixel;
- values.fill_style = FillOpaqueStippled;
-
- --- 129,134 ----
- XGCValues values;
-
- ! values.foreground = myFgPixel;
- ! values.background = myBgPixel;
- values.fill_style = FillOpaqueStippled;
-
- ***************
- *** 141,145 ****
-
- values.join_style = JoinBevel;
- ! values.background = myBlackPixel;
- drawGC = XCreateGC (mainDisplay, mainWindow,
- GCBackground | GCJoinStyle, &values);
- --- 141,145 ----
-
- values.join_style = JoinBevel;
- ! values.background = myBgPixel;
- drawGC = XCreateGC (mainDisplay, mainWindow,
- GCBackground | GCJoinStyle, &values);
- *** rect.c.orig Wed Jun 27 13:29:56 1990
- --- rect.c Wed Jun 27 13:29:57 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/rect.c,v 1.1 90/04/01 22:16:37 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/rect.c,v 1.2 90/06/15 01:13:58 william Exp $";
- #endif
-
- ***************
- *** 166,170 ****
- if (rx >= ry)
- { /* flat oval */
- ! tmp_y = sqrt ((double)(ry*ry*(1-(X-cx)*(X-cx)/rx/rx)));
- y1 = cy - tmp_y;
- y2 = cy + tmp_y;
- --- 166,170 ----
- if (rx >= ry)
- { /* flat oval */
- ! tmp_y = sqrt (fabs ((double)(ry*ry*(1-(X-cx)*(X-cx)/rx/rx))));
- y1 = cy - tmp_y;
- y2 = cy + tmp_y;
- ***************
- *** 173,177 ****
- else
- { /* tall oval */
- ! tmp_x = sqrt ((double)(rx*rx*(1-(Y-cy)*(Y-cy)/ry/ry)));
- x1 = cx - tmp_x;
- x2 = cx + tmp_x;
- --- 173,177 ----
- else
- { /* tall oval */
- ! tmp_x = sqrt (fabs ((double)(rx*rx*(1-(Y-cy)*(Y-cy)/ry/ry))));
- x1 = cx - tmp_x;
- x2 = cx + tmp_x;
- *** ruler.c.orig Wed Jun 27 13:30:05 1990
- --- ruler.c Wed Jun 27 13:30:06 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/ruler.c,v 1.1 90/04/01 22:16:38 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/ruler.c,v 1.3 90/05/22 16:59:40 william Exp $";
- #endif
-
- ***************
- *** 32,37 ****
- XGCValues values;
-
- ! values.foreground = myWhitePixel;
- ! values.background = myBlackPixel;
- values.fill_style = FillSolid;
- values.font = rulerFontPtr->fid;
- --- 32,37 ----
- XGCValues values;
-
- ! values.foreground = myFgPixel;
- ! values.background = myBgPixel;
- values.fill_style = FillSolid;
- values.font = rulerFontPtr->fid;
- ***************
- *** 58,63 ****
- while (XCheckWindowEvent (mainDisplay, hRuleWindow, ExposureMask, &ev)) ;
-
- ! inc = (gridOn) ? xyGrid : DEFAULT_GRID;
- ! abs_inc = (gridOn) ? (xyGrid<<zoomScale) : (DEFAULT_GRID<<zoomScale);
-
- start = ((int)(drawOrigX / inc)) * inc;
- --- 58,63 ----
- while (XCheckWindowEvent (mainDisplay, hRuleWindow, ExposureMask, &ev)) ;
-
- ! inc = xyGrid;
- ! abs_inc = (xyGrid<<zoomScale);
-
- start = ((int)(drawOrigX / inc)) * inc;
- ***************
- *** 108,113 ****
- while (XCheckWindowEvent (mainDisplay, vRuleWindow, ExposureMask, &ev)) ;
-
- ! inc = (gridOn) ? xyGrid : DEFAULT_GRID;
- ! abs_inc = (gridOn) ? (xyGrid<<zoomScale) : (DEFAULT_GRID<<zoomScale);
-
- start = ((int)(drawOrigY / inc)) * inc;
- --- 108,113 ----
- while (XCheckWindowEvent (mainDisplay, vRuleWindow, ExposureMask, &ev)) ;
-
- ! inc = xyGrid;
- ! abs_inc = (xyGrid<<zoomScale);
-
- start = ((int)(drawOrigY / inc)) * inc;
- *** scroll.c.orig Wed Jun 27 13:30:12 1990
- --- scroll.c Wed Jun 27 13:30:13 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/scroll.c,v 1.1 90/04/01 22:16:39 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/scroll.c,v 1.3 90/05/22 14:20:12 william Exp $";
- #endif
-
- ***************
- *** 53,58 ****
- scrollPixmap = XCreatePixmap (mainDisplay, mainWindow, scrollBarW,
- scrollBarW, mainDepth);
- ! values.foreground = myWhitePixel;
- ! values.background = myBlackPixel;
- values.fill_style = FillTiled;
- values.tile = scrollPixmap;
- --- 53,58 ----
- scrollPixmap = XCreatePixmap (mainDisplay, mainWindow, scrollBarW,
- scrollBarW, mainDepth);
- ! values.foreground = myFgPixel;
- ! values.background = myBgPixel;
- values.fill_style = FillTiled;
- values.tile = scrollPixmap;
- ***************
- *** 86,91 ****
- block_h = (int)(scrollAreaH * frac);
-
- ! values.foreground = myBlackPixel;
- ! values.background = myWhitePixel;
- values.function = GXcopy;
- values.fill_style = FillSolid;
- --- 86,91 ----
- block_h = (int)(scrollAreaH * frac);
-
- ! values.foreground = myBgPixel;
- ! values.background = myFgPixel;
- values.function = GXcopy;
- values.fill_style = FillSolid;
- ***************
- *** 96,101 ****
- scrollBarW, scrollAreaH);
-
- ! values.foreground = myWhitePixel;
- ! values.background = myBlackPixel;
- values.fill_style = FillOpaqueStippled;
- values.stipple = patPixmap[SCROLLPAT];
- --- 96,101 ----
- scrollBarW, scrollAreaH);
-
- ! values.foreground = myFgPixel;
- ! values.background = myBgPixel;
- values.fill_style = FillOpaqueStippled;
- values.stipple = patPixmap[SCROLLPAT];
- ***************
- *** 135,140 ****
- block_w = (int)(scrollAreaW * frac);
-
- ! values.foreground = myBlackPixel;
- ! values.background = myWhitePixel;
- values.function = GXcopy;
- values.fill_style = FillSolid;
- --- 135,140 ----
- block_w = (int)(scrollAreaW * frac);
-
- ! values.foreground = myBgPixel;
- ! values.background = myFgPixel;
- values.function = GXcopy;
- values.fill_style = FillSolid;
- ***************
- *** 145,150 ****
- scrollAreaW, scrollBarW);
-
- ! values.foreground = myWhitePixel;
- ! values.background = myBlackPixel;
- values.fill_style = FillOpaqueStippled;
- values.stipple = patPixmap[SCROLLPAT];
- --- 145,150 ----
- scrollAreaW, scrollBarW);
-
- ! values.foreground = myFgPixel;
- ! values.background = myBgPixel;
- values.fill_style = FillOpaqueStippled;
- values.stipple = patPixmap[SCROLLPAT];
- ***************
- *** 169,172 ****
- --- 169,204 ----
- }
-
- + void ScrollUp ()
- + {
- + if (drawOrigY != 0)
- + {
- + drawOrigY -= HALF_INCH;
- + RedrawVScrollWindow ();
- + UpdDrawWinBBox ();
- + AdjSplineVs ();
- + AdjustCurText (0, HALF_INCH);
- + ClearAndRedrawDrawWindow ();
- + XClearWindow (mainDisplay, vRuleWindow);
- + RedrawVRuler ();
- + }
- + }
- +
- + void ScrollDown ()
- + {
- + if (paperHeight <= drawWinH) return;
- +
- + if (drawOrigY+drawWinH < paperHeight)
- + {
- + drawOrigY += HALF_INCH;
- + RedrawVScrollWindow ();
- + UpdDrawWinBBox ();
- + AdjSplineVs ();
- + AdjustCurText (0, -HALF_INCH);
- + ClearAndRedrawDrawWindow ();
- + XClearWindow (mainDisplay, vRuleWindow);
- + RedrawVRuler ();
- + }
- + }
- +
- static
- void VSBarHandler (button_ev)
- ***************
- *** 179,215 ****
- {
- if (button_ev->y < scrollBarW)
- ! {
- ! /* clicked in the uparrow */
- ! if (drawOrigY != 0)
- ! {
- ! drawOrigY -= HALF_INCH;
- ! RedrawVScrollWindow ();
- ! UpdDrawWinBBox ();
- ! AdjSplineVs ();
- ! AdjustCurText (0, HALF_INCH);
- ! ClearAndRedrawDrawWindow ();
- ! XClearWindow (mainDisplay, vRuleWindow);
- ! RedrawVRuler ();
- ! return;
- ! }
- ! }
- else if (button_ev->y >= scrollBarW+scrollAreaH)
- ! {
- ! /* clicked in the downarrow */
- ! if (paperHeight <= drawWinH) return;
- !
- ! if (drawOrigY+drawWinH < paperHeight)
- ! {
- ! drawOrigY += HALF_INCH;
- ! RedrawVScrollWindow ();
- ! UpdDrawWinBBox ();
- ! AdjSplineVs ();
- ! AdjustCurText (0, -HALF_INCH);
- ! ClearAndRedrawDrawWindow ();
- ! XClearWindow (mainDisplay, vRuleWindow);
- ! RedrawVRuler ();
- ! return;
- ! }
- ! }
- else /* clicked in the middle region */
- {
- --- 211,217 ----
- {
- if (button_ev->y < scrollBarW)
- ! ScrollUp (); /* clicked in the uparrow */
- else if (button_ev->y >= scrollBarW+scrollAreaH)
- ! ScrollDown (); /* clicked in the downarrow */
- else /* clicked in the middle region */
- {
- ***************
- *** 257,260 ****
- --- 259,294 ----
- }
-
- + void ScrollLeft ()
- + {
- + if (drawOrigX != 0)
- + {
- + drawOrigX -= HALF_INCH;
- + RedrawHScrollWindow ();
- + UpdDrawWinBBox ();
- + AdjSplineVs ();
- + AdjustCurText (HALF_INCH, 0);
- + ClearAndRedrawDrawWindow ();
- + XClearWindow (mainDisplay, hRuleWindow);
- + RedrawHRuler ();
- + }
- + }
- +
- + void ScrollRight ()
- + {
- + if (paperWidth <= drawWinW) return;
- +
- + if (drawOrigX+drawWinW < paperWidth)
- + {
- + drawOrigX += HALF_INCH;
- + RedrawHScrollWindow ();
- + UpdDrawWinBBox ();
- + AdjSplineVs ();
- + AdjustCurText (-HALF_INCH, 0);
- + ClearAndRedrawDrawWindow ();
- + XClearWindow (mainDisplay, hRuleWindow);
- + RedrawHRuler ();
- + }
- + }
- +
- static
- void HSBarHandler (button_ev)
- ***************
- *** 267,303 ****
- {
- if (button_ev->x < scrollBarW)
- ! {
- ! /* clicked in the leftarrow */
- ! if (drawOrigX != 0)
- ! {
- ! drawOrigX -= HALF_INCH;
- ! RedrawHScrollWindow ();
- ! UpdDrawWinBBox ();
- ! AdjSplineVs ();
- ! AdjustCurText (HALF_INCH, 0);
- ! ClearAndRedrawDrawWindow ();
- ! XClearWindow (mainDisplay, hRuleWindow);
- ! RedrawHRuler ();
- ! return;
- ! }
- ! }
- else if (button_ev->x >= scrollBarW+scrollAreaW)
- ! {
- ! /* clicked in the rightarrow */
- ! if (paperWidth <= drawWinW) return;
- !
- ! if (drawOrigX+drawWinW < paperWidth)
- ! {
- ! drawOrigX += HALF_INCH;
- ! RedrawHScrollWindow ();
- ! UpdDrawWinBBox ();
- ! AdjSplineVs ();
- ! AdjustCurText (-HALF_INCH, 0);
- ! ClearAndRedrawDrawWindow ();
- ! XClearWindow (mainDisplay, hRuleWindow);
- ! RedrawHRuler ();
- ! return;
- ! }
- ! }
- else /* clicked in the middle region */
- {
- --- 301,307 ----
- {
- if (button_ev->x < scrollBarW)
- ! ScrollLeft (); /* clicked in the leftarrow */
- else if (button_ev->x >= scrollBarW+scrollAreaW)
- ! ScrollRight (); /* clicked in the rightarrow */
- else /* clicked in the middle region */
- {
- ***************
- *** 349,353 ****
- {
- int row_offset, len, index, x, y, func, level;
- - char new_file_name[80];
- XButtonEvent * button_ev;
-
- --- 353,356 ----
- *** select.c.orig Wed Jun 27 13:30:25 1990
- --- select.c Wed Jun 27 13:30:27 1990
- ***************
- *** 6,10 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/select.c,v 1.1 90/04/01 22:16:40 william Exp $";
- #endif
-
- --- 6,10 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/select.c,v 1.4 90/06/26 00:11:25 william Exp $";
- #endif
-
- ***************
- *** 354,358 ****
- unsigned int status;
- int end_x, end_y;
- - XButtonEvent input;
- int done = FALSE, ltx, lty, rbx, rby, dx, dy;
- int new_end_x, new_end_y;
- --- 354,357 ----
- ***************
- *** 362,366 ****
-
- SelBox (drawWindow, revDefaultGC, XOff, YOff, end_x, end_y);
- ! XGrabPointer (mainDisplay, drawWindow, FALSE, ButtonReleaseMask,
- GrabModeAsync, GrabModeAsync, None, handCursor, CurrentTime);
-
- --- 361,365 ----
-
- SelBox (drawWindow, revDefaultGC, XOff, YOff, end_x, end_y);
- ! XGrabPointer (mainDisplay, drawWindow, False, None,
- GrabModeAsync, GrabModeAsync, None, handCursor, CurrentTime);
-
- ***************
- *** 613,617 ****
- HighLightForward ();
- SetCurChoice (NOTHING);
- ! fileModified = TRUE;
- justDupped = FALSE;
- }
- --- 612,616 ----
- HighLightForward ();
- SetCurChoice (NOTHING);
- ! SetFileModified (TRUE);
- justDupped = FALSE;
- }
- ***************
- *** 632,636 ****
- RedrawAnArea (botObj, selLtX-(1<<zoomScale), selLtY-(1<<zoomScale),
- selRbX+(1<<zoomScale), selRbY+(1<<zoomScale));
- ! fileModified = TRUE;
- justDupped = FALSE;
- }
- --- 631,635 ----
- RedrawAnArea (botObj, selLtX-(1<<zoomScale), selLtY-(1<<zoomScale),
- selRbX+(1<<zoomScale), selRbY+(1<<zoomScale));
- ! SetFileModified (TRUE);
- justDupped = FALSE;
- }
- ***************
- *** 656,660 ****
- selRbX+(1<<zoomScale), selRbY+(1<<zoomScale));
- HighLightForward ();
- ! fileModified = TRUE;
- justDupped = FALSE;
- }
- --- 655,659 ----
- selRbX+(1<<zoomScale), selRbY+(1<<zoomScale));
- HighLightForward ();
- ! SetFileModified (TRUE);
- justDupped = FALSE;
- }
- ---------------------------------> cut here <---------------------------------
- --
-
- -- Bill Cheng // UCLA Computer Science Department // (213) 206-7135
- 3277 Boelter Hall // Los Angeles, California 90024 // USA
- william@CS.UCLA.EDU ...!{uunet|ucbvax}!cs.ucla.edu!william
-
- dan
- ----------------------------------------------------
- O'Reilly && Associates argv@sun.com / argv@ora.com
- Opinions expressed reflect those of the author only.
-